OPS 13 - ÉJÅ[É\ÉãÇ™âBÇ≥ÇÍǃǢÇÈǩǫǧǩÇîªífÇ∑ÇÈ

Åi27-September-96Åj

Q: É}ÉEÉXÉJÅ[É\ÉãÇ™âBÇ≥ÇÍǃǢÇÈǩǫǧǩÇîªífÇ∑ÇÈÇ…ÇÕÅAÇ«ÇÃólÇ…Ç∑ÇÍÇŒÇÊÇ¢ÇÃÇ≈ǵÇÂǧǩÅH

A: åªéûì_Ç≈ç≈ó«ÇÃï˚ñ@ÇÕÅALowMem.hÇ…ÇÕä‹Ç‹ÇÍǃǢǻǢÉçÅ[ÉÅÉÇÉäÅEÉOÉçÅ[ÉoÉãïœêîÇégópÇ∑ÇÈDZÇΔÇ≈Ç∑ÅBǪÇÍÇÁÇÃÉçÅ[ÉÅÉÇÉäÅEÉOÉçÅ[ÉoÉãÇ™ä‹Ç‹ÇÍǃǢǻǢóùóRÇÕÅAè´óàÇÃOSÇÕÉ}ÉEÉXÉJÅ[É\ÉãÇàŸÇ»ÇÈï˚ñ@Ç≈àµÇ§â¬î\ê´Ç™Ç†ÇÈÇ©ÇÁÇ≈Ç∑ÅB

ÉçÅ[ÉÅÉÇÉäÅEÉOÉçÅ[ÉoÉãÇÃégópÇÕñ{óàÇ≈džÇÍÇŒä©ÇflÇÁÇÍÇÈDZÇΔÇ≈ÇÕǻǩǡÇΩÇÃÇ≈Ç∑Ç™ÅAå√Ç¢ÉCÉìÉ^ÉtÉFÅ[ÉXÉtÉ@ÉCÉãÇ≈ÇÕãLèqÇ≥ÇÍǃǢNjǵÇΩÅBÉÜÉjÉoÅ[ÉTÉãÉCÉìÉ^ÉtÉFÅ[ÉXÇÕÅAè´óàÇÃÉIÉyÉåÅ[ÉeÉBÉìÉOÉVÉXÉeÉÄÇ…å¸ÇØÇƒê›åvÇ≥ÇÍÇΩLJÇÃÇ≈Ç∑ÅBÉçÅ[ÉÅÉÇÉäÅEÉOÉçÅ[ÉoÉãÇÃíÜÇ…ÇÕÅAà¿ëSÇ…égópÇ∑ÇÈÇΩÇflÇ…ÉAÉNÉZÉXópä÷êîÇ…ÇÊÇËÉAÉNÉZÉXÇ∑ÇÈÇÊǧïœçXÇ≥ÇÍÇΩLJÇÃǙdžÇËÅAǪÇÍÇÁà»äOÇÕçÌèúÇ≥ÇÍNjǵÇΩÅBǪÇÃÇΩÇflÅAÉAÉNÉZÉXópä÷êîÇ™ópà”Ç≥ÇÍǃǢǻǢÉçÅ[ÉÅÉÇÉäÅEÉOÉçÅ[ÉoÉãÇÕÅAç°å„ïœçXÇ≥ÇÍÇÈâ¬î\ê´Ç™Ç†ÇËÅAà¿ëSÇ…égópÇ∑ÇÈDZÇΔÇ™Ç≈ǴǻǢÇΔǢǧDZÇΔLJdžÇËǧÇÈÇÃÇ≈Ç∑ÅB

à»â∫ÇÃíËã`ÇÕÅAå√Ç¢ÉCÉìÉ^ÉtÉFÅ[ÉXÉtÉ@ÉCÉãÇ©ÇÁî≤Ç´èoǵÇΩLJÇÃÇ≈Ç∑ÅB

enum {
    CrsrRect = 0x83C,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ™ÉqÉbÉgǵǃǢÇÈÉåÉNÉg [8 bytes]*/
    			
    TheCrsr  = 0x844,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇÃÉfÅ[É^ÅAÉ}ÉXÉNÇ®ÇÊÇ—ÉzÉbÉgÉXÉ|ÉbÉg [68 bytes]*/
    			
    CrsrAddr = 0x888,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ…âBÇ≥ÇÍǃǢÇÈïîï™ÇÃÉfÅ[É^ÇÃÉAÉhÉåÉX [long]*/
    			
    CrsrSave = 0x88C,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ…âBÇ≥ÇÍǃǢÇÈïîï™ÇÃÉfÅ[É^ [64 bytes]*/
    			
    CrsrVis  = 0x8CC,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ™ï\é¶Ç≥ÇÍǃǢÇÈÇ©ÅH [byte]*/
    			
    CrsrBusy = 0x8CD,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ™ÉçÉbÉNÇ≥ÇÍǃǢÇÈÇ©ÅH [byte]*/
    			
    CrsrNew  = 0x8CE,   /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ™ïœçXÇ≥ÇÍǃǢÇÈÇ©ÅH [byte]*/
    			
    CrsrState = 0x8D0,  /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇÃÉlÉXÉgÉåÉxÉã [word]*/
    			
    CrsrObscure = 0x8D2 /*[ÉOÉçÅ[ÉoÉãïœêî]  
    			ÉJÅ[É\ÉãÇ™ï¢Ç¢âBÇ≥ÇÍǃǢÇÈÅiobscureÅjǩǫǧǩÇé¶Ç∑ÉZÉ}ÉtÉH [byte]*/
  };

à»è„ÇÃí ÇËÅACrsrVisÇÕÉJÅ[É\ÉãÇ™âBÇ≥ÇÍǃǢÇÈǩǫǧǩÇé¶Ç∑ÉtÉâÉODžǻǡǃǢNjÇ∑ÅB

à»â∫ÇÃÉãÅ[É`ÉìÇÕÅAÉJÅ[É\ÉãÇÃèÛë‘ÇämîFÇ∑ÇÈÇΩÇflDžDZÇÃÉtÉâÉOÇégópǵǃǢNjÇ∑ÅB

int IsCursorHidden()
{
    int retVal = 0;
    unsigned char cursorVisible;

    cursorVisible = *(unsigned char*)CrsrVis;
    if (cursorVisible)
        retVal = 0;
    else
        retVal = 1;
    return (retVal);
}


[ Technical Q&A's : Operating System Services : OS Utilities : OPS11 ]